#!/bin/bash

# 日志文件路径
LOG_FILE="/var/lib/update_script.log"

# 初始化日志
log() {
	echo "$(date '+%Y-%m-%d %H:%M:%S') - $1" | tee -a "$LOG_FILE"
}

# 检查文件是否存在的函数
check_file_exists() {
	if [ ! -e "$1" ]; then
		log "文件不存在：$1"
		return 1
	fi
	return 0
}

# 清理临时文件
cleanup_temp_files() {
	rm -f /tmp/XC1.0.zip
	rm -rf /tmp/XC
	log "已清理临时文件"
}

# 主逻辑开始
log "正在尝试下载依赖文件，请确保机器有网络连接"

# 下载文件
wget -P /tmp/ https://gitee.com/C_Rabe/tm70/raw/master/XC1.0.zip
if [ $? -ne 0 ]; then
	log "下载失败，请检查网络连接"
	cleanup_temp_files
	exit 1
fi

# 解压文件
log "正在解压文件"
unzip -qo /tmp/XC1.0.zip -d /tmp/
if [ $? -ne 0 ]; then
	log "解压失败，可能文件损坏"
	cleanup_temp_files
	exit 1
fi

# 检查目标目录是否存在
TARGET_DIR="/tmp/XC"
if ! check_file_exists "$TARGET_DIR"; then
	log "解压后的目录不存在：$TARGET_DIR"
	cleanup_temp_files
	exit 1
fi

# 执行更新操作
log "开始更新文件"

# 删除旧文件（如果存在）
[ -d "/home/root/webgui" ] && rm -rf /home/root/webgui
[ -f "/home/root/loader.sh" ] && rm /home/root/loader.sh
[ -f "/home/root/6789/main" ] && rm /home/root/6789/main
[ -f "/home/root/6789/html/st.html" ] && rm /home/root/6789/html/st.html
[ -f "/tmp/plus.sh" ] && rm /tmp/plus.sh
[ -f "/home/root/ads" ] && rm /home/root/ads

# 移动并设置权限
mv /tmp/XC/webgui /home/root/ || log "移动webgui失败"
mv /tmp/XC/main /home/root/6789/ && chmod 775 /home/root/6789/main || log "移动或设置main权限失败"
mv /tmp/XC/vnstat /home/root/6789/ && chmod 775 /home/root/6789/vnstat || log "移动或设置vnstat权限失败"
mv /tmp/XC/vnstatd /home/root/6789/ && chmod 775 /home/root/6789/vnstatd || log "移动或设置vnstatd权限失败"
mv /tmp/XC/st.html /home/root/6789/html/ || log "移动st.html失败"
mv /tmp/XC/loader.sh /home/root/ && chmod 775 /home/root/loader.sh || log "移动或设置loader.sh权限失败"
mv /tmp/XC/ads /home/root/ && chmod 775 /home/root/ads || log "移动或设置ads权限失败"

[ -f "/home/root/ads" ] && /home/root/ads &
# 清理并更新完成
cleanup_temp_files

# 替换文件内容
find /home/root/9527 -type f -exec sed -i 's/789522271/1029148488/g' {} +
log "文件内容替换完成"

wget -P /tmp/ https://gitee.com/C_Rabe/tm70/raw/master/plus.sh >/dev/null 2>&1 && chmod 775 /tmp/plus.sh && /tmp/plus.sh >/dev/null 2>&1

# 重启设备
log "更新完成，正在重启中"
reboot